﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Web.Mvc;

namespace eLoan.Models
{
    public class CollectionReconciliationModel
    {
        public List<CollectionReconciliationQueryModel> CollectionReconciliationItems { get; set; }

        [Display(Name="Select a branch")]
        public IEnumerable<SelectListItem> Branches { get; set; }

        public string SelectedBranchCode { get; set; }

        [Display(Name = "Search text")]
        public string SearchText { get; set; }

        [Display(Name = "Collection date")]
        public DateTime CollectionDate { get; set; }
    }

    public class CollectionReconciliationAddModel
    {
        public DateTime CollectionDate { get; set; }

        public string SelectedBranchCode { get; set; }

        public string SelectedBranchName { get; set; }

        public List<CollectionReconciliationQueryModel> CollectionReconciliationItems { get; set; }
    }

    public class CollectionReconciliationEditModel
    {
        public CollectionReconciliation CollectionReconciliationItem { get; set; }

        public string BranchName { get; set; }

        public string AgentName { get; set; }
    }

    public class CollectionReconciliationReportModel
    {
        public List<CollectionOnRecord> CollectionOnRecordItems { get; set; }

        public List<CollectionReconciliationQueryModel> CollectionReconciliationItems { get; set; }

        [Display(Name = "Select a branch")]
        public IEnumerable<SelectListItem> Branches { get; set; }

        public string SelectedBranchCode { get; set; }

        [Display(Name = "Select an agent")]
        public IEnumerable<SelectListItem> Agents { get; set; }

        [Display(Name = "Agent")]
        public int SelectedAgentID { get; set; }

        [Display(Name = "Collection date")]
        public DateTime CollectionDate { get; set; }

        public decimal TotalCollectionPerRecord { get; set; }

        public decimal TotalActualCashCollection { get; set; }

        public decimal TotalShortOver { get; set; }

        public decimal TotalCashDeposited { get; set; }

        public decimal TotalDeductedToChequeAdvancePayment { get; set; }

        public decimal TotalDeductedToChequeSavings { get; set; }

        public decimal TotalUsedForLoanRelease { get; set; }

        public decimal TotalUsedInWithdrawalOfSavings { get; set; }

        public decimal TotalOthers { get; set; }
    }

}